/*
 *  This file is part of the Jikes RVM project (http://jikesrvm.org).
 *
 *  This file is licensed to You under the Eclipse Public License (EPL);
 *  You may not use this file except in compliance with the License. You
 *  may obtain a copy of the License at
 *
 *      http://www.opensource.org/licenses/eclipse-1.0.php
 *
 *  See the COPYRIGHT.txt file distributed with this work for information
 *  regarding copyright ownership.
 */
package org.jikesrvm.mm.mmtk;

import org.jikesrvm.VM;
import org.vmmagic.pragma.Uninterruptible;

/**
 * Debugger support for the MMTk harness
 */
@Uninterruptible
public final class Debug extends org.mmtk.vm.Debug {

  /**
   * A per-collector GC collection phase
   * @param phaseId The phase ID
   * @param ordinal The collector ID (within this collection)
   * @param before true at the start of the phase, false at the end
   */
  public void mutatorPhase(short phaseId, int ordinal, boolean before) {
    if(before) 
      VM.sysWriteln("Start Phase(", phaseId ,") mutatorID(", ordinal, ")");
    else 
      VM.sysWriteln("End Phase(", phaseId ,") mutatorID(", ordinal, ")");
  }

  
  /**
   * Enable/disable MMTk debugger support
   */
  @Override
  public boolean isEnabled() {
    return true;
  }

}
